Flexible, orienting, and better shopping wallet for netizens

ABSTRACT

An inventive electronic wallet management method is disclosed. It enables the wallet to be stored on a server, on a server access device or on a portable medium with full version control. It allows data to be entered into the wallet on the server access device or onto the server to maximize user convenience.

BACKGROUND OF THE INVENTION

[0001] The Flexible, Orienting, and Better Shopping Wallet for Netizensis a method of solving four problems experienced by netizens of theglobal Internet village: the Orientation, Identification, Ergonomic, andShopping problems.

[0002] The Netizen Orientation Problem:

[0003] A netizen currently feels disoriented within the global Internetvillage. In the off-line world she makes friendships and alliances andhas a mental map of her relationships and keeps updating it to reflectdaily events. In the global Internet village she also needs to know thestate of play as regards her relationships: who she has told what to;who is thinking what about her; who is saying what about her to whom;and what contracts she has made with whom. She is, however, not so wellequipped to make a mental map of online relationships, since her sensorymemories are impoverished compared with off-line.

[0004] The Netizen Identification Problem:

[0005] A netizen's orientation in the global Internet village is greatlyassisted, if, when she visits a site that she has visited before, thesite recognizes her. And a site is able to be more helpful to thenetizen, if it knows about its past interactions with her. To achievethese benefits, it is necessary for the netizen to have a uniqueidentifier within the database of each site that she visits. The sitecan then ‘remember’ the state of play with that netizen by recordingdata against her unique identifier. Currently one problem for a netizenthat visits many sites is that, since she may have more than oneidentifier, it is difficult for her to recall which one, if any, appliesto a given site. She may try to avoid this problem by using the sameidentifier on all sites. However this may not be possible, because whatis unique within one site may not be unique across all sites.

[0006] The Netizen Ergonomic Problem:

[0007] Many interactions between a netizen and an Internet site requireher to give the site some personal data, e.g. delivery name and addressand bankcard details. When she visits a new site the same details may berequired again and she has to enter them yet again. This is a waste oftime and energy and can lead to transcription errors.

[0008] The Netizen Shopping Problems:

[0009] Currently when shopping on sites using catalogues, the prices arenot converted into the currency that suits her when she is importing andwhen she is buying on the home market and the product names anddescriptions are not supplied in her preferred language. She cannotelect to either shop on her own behalf or on behalf of anorganization—each site specializes in one or the other. She cannot makecharitable donations by assigning bonus points earned by her purchasesto one or more organizations of her choice, including the one on whosebehalf she is shopping. If her shopping is interrupted, she cannotreturn to a site and expect to find her shopping basket just as she leftit. At best she can mark some items “save until later” at checkoutstage. To have the contents of her basket delivered to more than oneaddress, she must select an address for each item in her basket. She isnot told how much any import duty will be before she confirms her order.She has no facility for forward ordering. No site splits an order lineif some of the items for the line are not in stock. She cannot split anorder line if she wishes to use more than one transit method for theitems in the line. She cannot split an order line if she wants to usemore than one gift wrap style for the items in it. The gift wrap priceis not varied with the size of the item or the quality of the wrapping.No site calculates carriage in real time for any destination. She cannotshop and view the contents of her basket at the same time. She cannotamend her basket at any time before paying. She cannot pay for thevarious sub-sections of her basket with different bankcards. She doesnot have the option of paying by bankcard or via a company account. Shecannot arrange to make returns or check up on returns she has alreadymade by interacting online with the site. She cannot arrange for importduty to be paid when the goods arrive in the destination country withoutfurther intervention on her part. She cannot archive her wallet data toprevent the wallet becoming unnecessarily large. Each of thesedeficiencies is a loss of convenience to the netizen.

[0010] Furthermore she has to communicate with the site server at everystage of purchasing: getting thumbnails of the products in thecatalogue, getting the details for a selected thumbnail, putting an itemin her shopping basket, viewing and modifying the contents of herbasket, continuing to shop or proceeding to checkout, supplying deliverydetails, selecting transit method, gift wrapping, getting carriage costsand customs duties payable, getting bank card authorization. This meansthat shopping is slower than necessary and that the site server iscarrying out these tasks instead of making more sales.

[0011] Currently there are two methods used to solve the first threeproblems, the Orientation, Identification and Ergonomic problems,described above. These methods are known respectively as the server-sidewallet and the client-side wallet.

[0012] In both cases a netizen uses an Internet Access Device (IAD), (atpresent this is usually a personal computer), to access a registry site.On this site she enters an identifier (User Name and Password) that isunique within the registry. In both cases this registration enables herto download some software to the fixed data storage facility of her IAD.

[0013] A description of the rest of the client-side wallet methodfollows:

[0014] 1. The IAD Software downloaded to the client IAD places a walleticon in her web browser and on her IAD desktop. She can activate thefirst icon at the beginning of a web session: it allows her to enter herregistry identifier and it uses this identifier to locate her wallet onher IAD whenever it is required during the web session. She can activatethe second icon on her desktop outside a web session. This icon enablesthe netizen to create, update, and delete personal data in her wallet onher IAD.

[0015] 2. The Wallet Management Software downloaded to the client IADcontains a database structure and processes that support the entry toand retrieval of personal data, e.g. names, addresses, and bankcarddetails, and also order details from this database.

[0016] 3. For occasions when the netizen visits a site that is not amember of the registry scheme the IAD Software reduces the amount ofform-filling that the netizen is required to do:

[0017] a. it reads the code composing a web page to identify any fieldlabels that it may contain

[0018] b. it searches the database for data associated with each suchlabel

[0019] c. it displays the data found for a field label as a list fromwhich the netizen can choose one datum (a single address counts as onedatum)

[0020] d. it displays the chosen datum within the associated field onthe web page

[0021] e. if the netizen indicates that she does not wish to use any ofthe items on the list and instead keys the datum into the field herself,it records the datum entered together with the field label within thedatabase, so that it is available for future use

[0022] It automatically copies any order or donation details that shemakes on the site page and stores it in an unstructured format in thewallet database on her IAD.

[0023] 4. For occasions when the netizen visits a site that is a memberof the registry scheme the IAD Software reduces the amount ofform-filling that the netizen is required to do in that such a sitepresents no forms to netizens that have registry wallets. In thissituation if the member site needs an item of personal data from thenetizen and the netizen has opened her wallet, it will

[0024] a. search the database for a datum associated with a standardlabel for that item

[0025] b. display the data found for a field label as a list from whichthe netizen can choose one datum (an address counts as one datum)

[0026] c. display the chosen datum on the web page

[0027] d. display a wallet form into which she can key the datumrequired, if the netizen indicates that she does not wish to use any ofthe items on the list

[0028] e. record the datum entered within the database, so that it isavailable for future use

[0029] f. automatically enters any order or donation that she makes onthe site as structured data into her wallet database on her IAD.

[0030] A server-side wallet functions exactly like a client-side walletexcept that the wallet database and the processes that create, update,delete, and retrieve data from it remain on the server.

[0031] Both the client-side and server-side wallet methods solve thenetizen's orientation problem to some extent by noting within her walletwhat purchases or donations the netizen has made. Neither, however,holds within her wallet either a complete audit trail regarding whatpersonal data she has given to which sites or all that each member sitehas recorded about her on its database.

[0032] Both wallet methods solve the netizen's identification problem.She enters her registry identifier once per web session. For membersites this is all she has to do. For a non-member site, she still has toremember her site identifier once more, so that her wallet can captureit. After this she only has to remember and use her registry identifierin order to open her wallet. Her wallet enters any other identifiersrequired by sites she visits.

[0033] Both wallet methods solve the ergonomic problem as far aspossible by allowing the netizen to store the data required by sites inher wallet. This data is entered into her wallet via a wallet form orvia non-member site forms. Non-member sites can save the netizen a greatdeal of time and energy by using standard field labels in their pagecode.

[0034] A client-side wallet has many advantages compared with aserver-side wallet:

[0035] 1. Inexpensive data storage: As the variety of Internet servicesoffered on the Internet increases, so the variety of types of personaldata required by the Internet sites also increases. There is currently awidespread need for billing and delivery addresses plus bankcarddetails. In the future, sites will be asking for, e.g., a netizen'sdimensions, weight, health record, insurance details, drivers licensedetails, and so on. As the Internet develops, the cost of storing,backing up, and making permanently available each netizen's server-sidewallet will increase. By contrast as the amount of personal data neededincreases, a client-side wallet increases in size at an insignificantincremental cost to the netizen and at no cost to the registry.

[0036] 2. Inexpensive Access: As more and more netizens (potentially 6billion and rising) want to access their server-side wallets, the costof preventing unacceptable access bottlenecks will increase. Bycontrast, if all netizens have client-side wallets, as the number ofnetizens increases, the registry of unique identifiers grows, but thisdoes not cause any access bottlenecks. This is because the netizens needonly access the registry's central server in order to register and afterthis, neither they nor the sites they visit ever need to access theregistry site.

[0037] 3. Inexpensive Audit Trail: If a server-side wallet were to holda complete audit trail of netizen's dealings on the Internet and a copyof each site's data about her, rather than just a list of her purchasesor donations, this would further increase storage costs. By contrast theclient-side wallets can contain all of this without any increase instorage cost to the registry and with insignificant increase in suchcost to the netizen.

[0038] 4. Fast Access: If the netizen wishes to access her server-sidewallet to study the data held in it, she must log on to the Internet andvisit the Qpass site. By contrast a netizen with a client-side walletneed not log on to the Internet, so access to her data is faster.Similarly, if data is to be retrieved from her wallet during a websession the retrieval time is much shorter if the wallet is client-sidethan if it is server-side.

[0039] 5. Safety: From the netizen's point of view, the most seriousdisadvantage of a server-side wallet is that her personal data is notunder her control; it is out there somewhere in cyber space along withmillions of other wallets—a tempting, concentrated target for hackers.By contrast client-side wallets are dispersed and each one remains underthe control of the netizen on the local storage medium of her IAD.

[0040] The client-side wallet suffers, however, from two disadvantagesnot shared by the server-side wallet:

[0041] 1. If the IAD is a “thin client”, i.e. it has little localintelligence and/or local data storage facility, then a server-sidewallet is required and a client-side wallet cannot be used.

[0042] 2. The netizen cannot use her client-side wallet from any IAD.Physically a client-side wallet could be copied from one IAD (A) toanother IAD (B) in one of two ways:

[0043] a. by copying the wallet from (A) onto a diskette (a mobile datastorage medium) and then copying it from the diskette onto (B)

[0044] b. by uploading the wallet from (A) onto an Internet server anddownloading it from this Internet server onto (B)

[0045]  However, since the wallet may be updated every time it is used,such a practice could place a different version of her wallet on eachIAD that she uses. This is chaotic since, e.g. each may have a differentand incomplete record of her purchases and each may have different andconflicting sets of personal data.

[0046] Currently netizens have to choose to have a client-side wallet ora server-side wallet. Alternatively she can choose to have one of eachand maintain two wallets. She cannot have one wallet and choose itslocation according to her situation—there is no flexible wallet.

BRIEF SUMMARY OF THE INVENTION

[0047] The Flexible, Orienting, and Better Shopping Wallet for Netizensis a new method of solving the netizen's orientation, identification,ergonomic, and shopping problems: it allows the netizen to choose everytime she opens a web-session whether to operate her wallet as aserver-side wallet or a client-side wallet during that session. At theend of each wallet session she can choose where to store her wallet:server-side or client-side. If she chooses to store it client-side, shecan choose whether to make it portable or not. If she chooses to make itportable, then she can specify which sections of her wallet are to beportable. The current invention enables her to keep her options open andto adapt her wallet to suit her situation—it provides her with aflexible wallet.

[0048] Furthermore the Flexible, Orienting, and Better Shopping Walletfor Netizens method provides full Orientation for the netizen within theglobal Internet village:

[0049] a. it keeps a complete audit trail for her web sessions

[0050] b. it records orders and donations

[0051] c. it captures from any site visited by the netizen any otherdata held about her on that site's database, if the site is a member ofthe wallet registry's scheme

[0052] d. it archives the audit trail regularly to prevent the FlexibleWallet from becoming too bloated

[0053] e. It uses the natural language preferred by the netizen.

[0054] The Flexible, Orienting, and Better Shopping Wallet for Netizensmethod

[0055] 1. allows the netizen to run a server-side wallet; this hasdisadvantages as regards cost, speed, and safety but

[0056] a. ensures that she will never to be caught on her travelswithout her wallet

[0057] b. allows her to use an IAD that can only support a thin client

[0058] c. allows her to avoid putting her wallet on an IAD that may be asecurity risk for her

[0059] 2. allows her to run a client-side wallet; in this mode she getsthe advantages of safe, cheap storage, and fast access and

[0060] a. she can convert this client-side wallet into a portable one,so that she can use it on her travels

[0061] b. if she chooses to port her wallet (via a diskette or othermobile storage medium), then she must be careful not to lose it.However, if she does lose it, she can retrieve it from the last IAD thatshe used

[0062] 3. if she wishes to use her wallet on an IAD and she has noaccess to her wallet, the registry automatically provides a temporaryserver-side wallet which gets amalgamated with her permanent wallet atthe first opportunity

[0063] 4. allows shopping at a site that uses the catalogue method ofselling goods to be handled largely on the client; this gives theadvantage of fast response times to the purchasing process; this is alsoeconomical as regards use of the site server.

[0064] Furthermore the current invention achieves portability withoutchaos for the netizen's wallet:

[0065] 1. It treats the diskette version as the wallet and ignores thefact that different versions of it may exist on each IAD used by thenetizen.

[0066] 2. Whenever she inserts the diskette wallet into an IAD andclicks her wallet browser button, if there is a copy of her wallet onthe fixed storage medium of that IAD and the netizen supplies a diskettewallet to the IAD's diskette reader the diskette wallet is automaticallyintegrated with the copy on the IAD; if there is no copy on the IAD, butthe netizen submits her diskette wallet to the IAD, the contents of thediskette are copied to the IAD.

[0067] 3. If there is a copy of her wallet on both the client and theserver, these are automatically synchronized.

[0068] 4. If, for some reason, she creates more than one portable walletand they are different versions, they can be amalgamated into one bypresenting each one in turn for separate web sessions on a single IAD.The procedure is the same for any number of diskette wallets: they canall be reduced to one authoritative wallet in this manner.

[0069] The current invention also provides the netizen with bettershopping because, whether her wallet database is currently locatedserver-side or client-side, the wallet method includes software that ispermanently resident client-side on the IAD and which is used by anynumber of wallets. This software, located on the IAD, can carry out thefollowing tasks with minimal reference to the server of the site onwhich she is shopping:

[0070] Netizen Preferences

[0071] 1. Determine from the netizen's wallet her preferred currenciesfor the home market and for importing. Their names are automaticallysubmitted to the site she is visiting so that it can present prices inher preferred currency; this facility makes the netizen feel more athome and enables her to manage her budgets since her bank accounts arelikely to be in these currencies.

[0072] 2. Determine from the netizen's wallet her preferred language andautomatically submit its name to the site she is visiting so that it canpresent product descriptions in her preferred language.

[0073] Organizations

[0074] 1. Allow the netizen, on each visit to a site, to elect torepresent an organization or to shop on her own behalf. The IAD softwareconsults the site for a list of organizations that she is authorized torepresent on the current site. She can then choose one of these. Thismeans that one site can serve both consumers and businesses.

[0075] 2. Accumulate bonus points to be donated to organizations chosenby the netizen this encourages altruism and helps charities.

[0076] Multi-tasking and Continuity

[0077] 1. Allow the netizen to continue shopping while still being ableto view her shopping basket contents

[0078] 2. Retain a basket which has not completed the check-outprocedure after the netizen has left the site, so that the netizen cancome back to it without having to request for each individual item thatit be “saved until later”. This saves the netizen having to start overagain, should she exit the site before completing and confirming herorder.

[0079] 3. Allow the netizen to view one shopping basket for each ofseveral sites at the same time—this makes comparison shopping easier.

[0080] 4. Allow the netizen to leave a site on which she has beenshopping without losing her shopping basket, go to another site, shop onthis other site and compare the contents of the two shopping baskets andso on for any number of sites and baskets. This is convenient forcomparison shopping.

[0081] 5. Allow the netizen on a given site to amalgamate an old basketthat did not complete the checkout procedure with the current basket forthe site.

[0082] 6. Allow the netizen to amend her basket at any time before ithas been transmitted to the site as a confirmed order.

[0083] Destination Flexibility

[0084] 1. Allow the netizen to assign several delivery addresses to onebasket by assigning each order line to one address (splitting the orderlines only where necessary). This means that she can select eachdelivery address only once, rather than once for each line in thedelivery.

[0085] Dispatch Delay Flexibility

[0086] 1. Allow the site to split an order line if not all the items init have the same dispatch delay.

[0087] 2. Splits a delivery into sub-deliveries, whenever the sitereports more than one dispatch delay for order lines within a delivery.

[0088] 3. Allows the netizen to lengthen the dispatch delays supplied bythe site as a way of forward ordering.

[0089] Transit Method Flexibility

[0090] 1. Allows the netizen to select a transit method for each orderline in her basket within the limits of what is permissible for the typeof product.

[0091] 2. Allows the netizen to split a delivery into sub-deliveries,whenever the transit methods she wishes to use are not applicable to allthe items in a delivery.

[0092] 3. Allows the netizen to split an order line, whenever a transitmethod she wishes to use is not to be applied to all the items in theline.

[0093] Carriage Charges Flexibility

[0094] 1. Provide the netizen, after consulting a specialized Carriageand Tariffs Server, with carriage costs no matter what the destination.

[0095] 2. Provide the netizen, after consulting a specialized Carriageand Tariffs Server, with the lowest carriage costs for each transitmethod (presented as journey durations) she has selected for eachdelivery or sub-delivery composing her shopping basket.

[0096] 3. If the netizen does not want to accept the charges she canselect a different set of transit methods and get these priced and so onuntil she is ready to accept the transit charges.

[0097] In this way the netizen makes informed decisions about whichtransit method to use, if any, for which sub-delivery.

[0098] Gift Wrapping Flexibility

[0099] 1. Allows the netizen to select a different gift wrap style foreach item in each order line in the netizen's basket.

[0100] 2 Calculates a gift wrap price tailored to the amount of paperused and the quality of the gift wrap.

[0101] Support for Importing

[0102] 3. Tell the netizen, after consulting a specialized Carriage andTariffs Server, when she is shopping across trading zone boundaries andthe rules about paying import duty for this particular boundary.

[0103] 4. Allow the netizen to enter the tariff code for each order linein her shopping basket, if necessary, and then calculate the import dutypayable for each of these lines.

[0104] 5. Allow the netizen to arrange to have any import duty paid viathe Internet to the relevant Customs and Excise when the goods arrive attheir destination country without any further intervention by her.

[0105] This means that world trade and the increase in wealth thatfollows from such trade is supported by this invention.

[0106] Payment Flexibility

[0107] 1. Allow the netizen to pay by bankcard or, if she isrepresenting an organization, to use a company account.

[0108] 2. Allow the netizen to select which sub-deliveries are to bepaid for by which method.

[0109] 3. Allow the netizen to select which sub-deliveries should bepaid for from which bankcard or which company account.

[0110] 4. The registry credits the Customs and Excise bank account withany import duty that is due when goods arrive at the boundary of thecountry and debits the bankcard or, if no bankcard is involved, the sitebank account. Again this reduces the load on the site servers.

[0111] Returns Management

[0112] 1. Allow the safe arrival of returns to be verified by thenetizen

[0113] 2. Allow the netizen to warn the site of impending returns forwhich the site issues a return identifier. This means better customerservice.

[0114] Advantages for Member Sites

[0115] 1. Instead of communicating with the site server at every stageof purchasing, the IAD only consults the site server to authorize anetizen as a representative of an organization, a provider of acatalogue of products described in many languages, of dispatch delays,of gift wrap styles, and of account authorization.

[0116] 2. The site server does not have to manage the shopping processwhich means that it can concentrate on customer sales support, providinga good catalog, and the business of fulfillment. It can concentrate onthese with the assurance that only when the order is confirmed andcomplete in all respects is it transmitted to the site which sets aboutfulfilling the order.

[0117] 3. As soon as it dispatches a sub-delivery it notifies theregistry server that the dispatch has occurred:

[0118] If the dispatch is to be paid for by bankcard, the registrycredits the site bank account with the total amount due for the dispatch(less insurance and import duty) less an agreed payment to the registryand debits the bankcard.

[0119] If an organization account is to be used, the registry sends aninvoice to the organization. When the site receives a payment on theaccount, it notifies the registry and the registry debits the site withthe agreed payment to the registry.

[0120]  This means that the accounting work of the site is greatlyreduced.

[0121] 4. The registry credits an insurer with any premiums due for adispatch as soon as it is notified of the dispatch and debits thebankcard or, if no bankcard is involved, the site bank account. Againthis reduces the load on the site servers.

[0122] 5. The use of a specialist site to determine import duty andcarriage saves endless duplication of these functions for every site.

DETAILED DESCRIPTION OF THE INVENTION

[0123] The detailed description of The Flexible, Orienting, and BetterShopping Wallet for Netizens method is in the form of a structurednarrative. Its structure is shown in the FIGS. 1-20 which should be readas follows: perform the process named in a box in the sequence: left toright and depth-first; if a box has an asterisk in the top right-handcorner, perform the process named an indefinite number of times until aspecified condition obtains; if a box has an “O” in the top right-handcorner, perform the process if a specified condition obtains or elseperform the process named in the immediately succeeding box with a “O”in the top right-hand corner; if a box has an “O” with a line through itin the top right-hand corner, perform the process if a specifiedcondition obtains or else do nothing. If there is a “/” in the bottomright-hand corner of a box, then it is not performed unless the netizenresponds as permitted by the box preceding it by either filling in aform, answering a question, or selecting from a list. If the lineconnecting several boxes in a row is a double line, then the connectedboxes can be performed in any order.

[0124] The circled numbers attached to the first box on each page referto the figure to which the current figure is linked. Other circlednumbers refer to figures that are linked to the current figure. Thenumber after the dash on each box is the level number in the hierarchyof boxes.

[0125] In the narrative below, Section A covers all the boxes in thefigures whose numbers are pre-fixed with A. Similarly for Sections B-Hand J-V; there is no Section I.

[0126]FIG. 25 shows the flow of data for The Flexible, Orienting, andBetter Shopping Wallet for Netizens method:

[0127] 1. Wallet management software is downloaded from the RegistryServer to the current Internet Access Device (IAD) as soon as thenetizen registers on the registry server. It includes a date when thenext version of the software will become available. At a later date ifthe registered netizen wishes to work at an IAD to which this softwarehas not been downloaded, she can instruct the registry server todownload it to this new IAD. At registration time, if the newlyregistered netizen wishes her wallet database to start its life in“Clientside” mode then it will also be down loaded from the registryserver to the IAD. At the beginning and end of every session in whichshe uses her wallet while accessing the web, she can choose to downloadher wallet database from the registry server to her current IAD, if itis on the registry server. Whenever a new version of the walletmanagement software becomes available it is downloaded from the RegistryServer to the IAD together with a date when the next version will beavailable.

[0128] 2. When the netizen opens her wallet within a web session, thewallet management software extracts the netizen's preferred languagesand wallet language and other data from the netizen's wallet (whereverit is located), and supplies them to the Site Server. The walletmanagement software on the IAD also supplies data for any fields on sitepages which are then sent to the site server. The IAD also asks the siteserver to authorize a netizen who claims to be representing anorganization. If the netizen does some catalog shopping, then thenetizen's browser on the IAD allows her to ask the site to request sitepages. Also the wallet management software on the IAD will send messagesto the site server that will reserve goods for the netizen in the site'sfulfillment depot, and ask the site server to report on whether anorganization has an account with the site.

[0129] 3. The site server supplies pages including thumbnails ofproducts in a selected category or full details for a product (includingdescription, standard and special prices, permitted transit methods,sales tax rate, bonus point rate, and compatibility rules) to the IAD asrequested by the netizen. The site server sends answers to questionsposed by the wallet management software on the IAD: a list oforganizations the netizen is authorized to represent; the dispatch delayfor goods in the netizen's basket, confirmation or otherwise that anorganization has an account with the site, acceptance of the netizen'sorder.

[0130] 4. If the netizen does catalog shopping on a site the walletmanagement software on the IAD sends the details of a proposed deliveryincluding the transit methods to be used to transport it to the Carriageand Tariffs Server (CATS).

[0131] 5. For this delivery the CATS supplies to the IAD walletmanagement software the figures for any sales tax due, any import dutypayable, the journey durations for each permitted transit method, andthe carriage charge for each selected transit method.

[0132] 6. The IAD wallet management software sends the amount that anetizen wishes to debit to one of her bankcards together with the cardidentifier to The Payment Authorization Server (PAS)

[0133] 7. The PAS sends an authorization or rejection to the IAD walletmanagement software

[0134] 8. If the netizen does catalog shopping on a site the walletmanagement software on the IAD sends the whole basket along with paymentdetails to the Site Server.

[0135] 9. When the netizen opens her wallet within a web session, thewallet management software on the IAD first determines whether the dateon which a new version of the software becomes available has arrived. Ifit has arrived, it asks the Registry Server to download the new version.If the netizen does catalog shopping on a site the wallet managementsoftware on the IAD sends the whole basket when it has been through thecheckout process along with payment details to the Registry Server.

[0136] Provide a Flexible, Orienting and Better Shopping Wallet

[0137] Let A be any wallet database. Let B be any wallet database otherthen A.

[0138] As used below:

[0139] “to synchronize wallets A and B” means “to add any extra datathat is found in the wallet A database that is not in the wallet Bdatabase to the wallet B database and vice versa and, if there are anyconflicts between the two, to either record both versions or ask thenetizen to say which of each pair of conflicting values is correct, andto overwrite the incorrect with the correct one in both databases”.

[0140] “to integrate (part of) wallet A with wallet B” means “to add anyextra data that is found in the wallet A database that is not in thewallet B database to the wallet B database and, if there are anyconflicts between the two, to either record both versions or ask thenetizen to say which of each pair of conflicting values is correct, andif the incorrect one is in the wallet B database to overwrite it withthe correct one”.

[0141] “unique identifier” means “a user name followed by a passwordwhere the password is unique with the user name within the registry”.

[0142] “web session” means “a period during which the Internet isaccessed using a browser on a given IAD”.

[0143] “wallet session” means “a period initiated by the opening of anetizen's wallet during a web session”.

[0144] In what follows it is understood that if there is inadequatephysical space to complete the task when copying a wallet database fromone medium to another, integrating one wallet database with another, orsynchronizing two wallet databases, then the netizen is told that thisis so and the process stops.

[0145] (A) is performed on the registry site server during a web sessionusing the current Internet Access Device (IAD). (F) is performed on thenetizen's current IAD. (G) is performed during a web session on thenetizen's current IAD.

[0146] Perform

[0147] A Deal with Registry, if the netizen visits the registry

[0148] F Deal with Desk Top Usage, if the netizen clicks the wallet desktop icon

[0149] G Deal with Web Session Usage, if the netizen clicks the walletbrowser icon

[0150] U Deal with Payments, if a dispatch file, or a customs importduty demand is received by the registry

[0151] Section A: Deal with Registry

[0152] Communicate with the netizen, use the natural language selectedin §1 until the end of §8. From §9 onwards use the natural languageselected in §8 for all other parts of Section A (Sections A-E).

[0153] Perform

[0154] 1 Deal with Registration Question

[0155] 4 Deal with Answer

[0156] 1. Deal with Registration Question

[0157] Perform

[0158] 2 List the Wallet Languages

[0159] 3 Registered?

[0160] List the Wallet Languages

[0161] Provide a list of the names of natural languages used forwallets—use the name of the language used by the speakers of thelanguage. The netizen can select one.

[0162] 3. Registered?

[0163] The registry site asks the netizen whether she has alreadyregistered. She can only reply “Yes” or “No”. Ask the question andpresent the possible answers in the natural language selected by thenetizen from the list in §1.

[0164] 4. Deal with Answer

[0165] Perform

[0166] 5 Deal with Applicant, if netizen replies “No”

[0167] Else

[0168] 26 Deal with Member

[0169] 5. Deal with Applicant

[0170] Perform

[0171] 6 Deal with Language and Currency

[0172] 10 Deal with Unique Identifier

[0173] 15 Deal with Password Verification

[0174] 18 Deal with Registration Data

[0175] 25 Deal with Server-side versus Client-side

[0176] 6. Deal with Language and Currency

[0177] Perform

[0178] 7 List Languages

[0179] 8 List Wallet Languages

[0180] 9 List Hard and Soft Currencies

[0181] 7. List Languages

[0182] Present a list of natural languages. Ask the netizen to select atmost three languages and rank them according to his usage preferences.Note these language preferences.

[0183] 8. List Wallet Languages

[0184] List all the languages in which the wallet is available and askthe netizen to select the one that she wishes her wallet to use. Notethe wallet language preference.

[0185] 9. List Hard and Soft Currencies

[0186] List the hard currencies and list the soft currencies. Ask thenetizen to select from either list the currency she wishes to use forpurchases made within her own country or trading zone. Also ask thenetizen to select from the list of hard currencies the one that shewishes to use for purchases outside her country or trading zone.

[0187] 10. Deal with Unique Identifier

[0188] Perform

[0189] 11 Present Unique Identifier Form

[0190] 12 Deal with Unique Identifier, until a unique identifier hasbeen recorded

[0191] 11. Present Unique Identifier Form

[0192] Present form with fields into which the netizen can key her username and password.

[0193] 12. Deal with Unique Identifier

[0194] Perform

[0195] 13 Enter a Different Password, if password is not unique withinuser name

[0196] Else

[0197] 14 Record Unique Identifier

[0198] 13. Enter a Different Password Refresh the password field andinvite the netizen to enter a new password.

[0199] 14. Record Unique Identifier Create a record of the new netizenusing this unique identifier.

[0200] 15. Deal with Password Verification

[0201] Perform

[0202] 16 Present Second Password Field

[0203] 17 Deal with Unique Identifier, if second entry of password doesnot match the first

[0204] 16. Present Second Password Field

[0205] Add a second password field to the unique identifier form. Asknetizen to enter her password a second time to verify it.

[0206] 17. Deal with Unique Identifier

[0207] Perform §4 of Section A after deleting the record created in §14of Section A.

[0208] 18. Deal with Registration Data

[0209] Perform

[0210] 19 Validate Registration Data

[0211] 22 Deal with Recording Registration

[0212] 19. Validate Registration Data

[0213] Perform

[0214] 20 Present Registration Form

[0215] 21 Validate One Datum, until all data are valid

[0216] 20. Present Registration Form

[0217] Display a registration form that allows the netizen to enter herfull name and address, a question and the answer to it where thequestion is such that she alone knows the answer, her email address, herdate and place of birth, her trading zone (if any), and optionally herelectronic signature. The netizen can fill in the form.

[0218] 21. Validate One Datum

[0219] Perform §3 in Section D.

[0220] 22. Deal with Recording Registration Data

[0221] Perform

[0222] 23 Deal with Member, if the surname plus date and place of birthare already on the register

[0223] Else

[0224] 24 Record Registration Data

[0225] 23. Deal with Member

[0226] Perform Section E and delete the record created in §8 of SectionA.

[0227] 24. Record Registration Data

[0228] Tell her that she is now registered and update the record alreadycreated in §8 of section A with this registration data.

[0229] 25. Deal with Server-side versus Client-side

[0230] Perform Section B

[0231] 26. Deal with Member

[0232] Perform Section E.

[0233] Section B: Deal with Server-side Versus Client-side

[0234] Perform

[0235] 1 Check the Internet Access Device

[0236] 2 Deal with Result

[0237] 9 Deal with Referral

[0238] 1. Check the Internet Access Device

[0239] Determine whether the netizen's current IAD has enough space onits permanent storage medium to store and operate a client-side wallet.

[0240] 2. Deal with the Result

[0241] Perform

[0242] 3 Deal with Server-side/Client-side, if the Internet accessdevice is up to the job of holding and managing a client-side wallet

[0243] 8 Create a Server-side Wallet

[0244] 3. Deal with Server-side/Client-side

[0245] Perform

[0246] 4 Server-side/Client-side?

[0247] 5 Deal with Result

[0248] 4. Client-side/Server-side?

[0249] Explain the advantages and disadvantages of client-side walletsversus server-side wallets. Tell her that her wallet is flexible whichmeans that for any particular wallet session she can select whichevermode she wishes to use. Ask her where she would like her wallet to beplaced for now: client-side or server-side.

[0250] 5. Deal with Result

[0251] Perform

[0252] 6 Create a Netizen Selected Server-side Wallet, if the netizenelects to use a server-side wallet during her first wallet session

[0253] Else

[0254] 7 Create a Client-side Wallet

[0255] 6. Create a Netizen-selected Server-side Wallet

[0256] Download the multilingual desk top software and the multilingualbrowser software onto the current IAD. Include in the browser software adate on which the registry is to be accessed in order to downloadversion updates of all client-side software. Create a server-side walletfor the netizen that includes her unique identifier, her registrationdata, and the wallet language and the currencies selected in §6 ofSection A.

[0257] 7. Create a Client-side Wallet

[0258] Download the multilingual desk top software and the multilingualbrowser software onto the current IAD. Include in the browser software adate on which the registry is to be accessed in order to downloadversion updates of all client-side software. Download the netizen'swallet containing her unique identifier, her registration data, and thewallet language selected in §6 of Section A.

[0259] 8. Create a Server-side Wallet

[0260] Download the multilingual browser software onto the current IAD.Include in the browser software a date on which the registry is to beaccessed in order to download version updates of all client-sidesoftware. Create a server-side wallet for the netizen that includes herunique identifier, her registration data, and the wallet languageselected in §6 of Section A. Also within this browser software set ThinClient Indicator to “Yes” to indicate that the IAD cannot support aclient-side wallet.

[0261] 9. Deal with Referral

[0262] Perform

[0263] 10 Deal with Facilities, if a server-side wallet has been createdand the netizen has not been referred from another site

[0264] 11 Return to Referring Site, if the netizen has been referredfrom another site

[0265] 10. Deal with Facilities

[0266] Perform Section C.

[0267] 11. Return to Referring Site

[0268] Return the netizen's Internet Access Device (IAD) to the pagefrom which she was referred to the registry site.

[0269] Section C: Deal with Facilities

[0270] Perform

[0271] 1 Present Facilities Menu

[0272] 2 Deal with Response

[0273] 1. Present Facilities Menu

[0274] Present a list of facilities consisting of: Update Wallet, Set upBrowser, Archive, View Archive, and Reports. If this Section is beingperformed within Section F: Deal with Desk Top Usage, do not include“Set up Browser”

[0275] 2. Deal with Response

[0276] 3 Synchronize Server and Client Wallets, if the netizen has awallet on the current IAD as well as on the server

[0277] 4 Have Diskette Wallet?

[0278] 5 Deal with Diskettes, if netizen has a diskette wallet

[0279] 6 Deal with Wallet Update, if the netizen selects “Update Wallet”

[0280] 12 Set up Browser, if netizen selects “Set up Browser”

[0281] 17 Archive, if netizen selects “Archive”

[0282] 18 View Archive, if netizen selects “View Archive”

[0283] 19 Deal with Reports, if netizen selects “Reports”

[0284] 3. Synchronize Server and Client Wallets

[0285] Perform §1 of Section H.

[0286] 4. Have Diskette Wallet?

[0287] Perform §2 of Section H.

[0288] 5. Deal with Diskettes

[0289] Perform §3 of Section H.

[0290] 6. Deal with Wallet Update

[0291] Perform

[0292] 7 Deal with Wallet Update

[0293] 11 Synchronize Client- and Server-side Wallets, if the netizenhas a wallet on the current IAD as well as on the server

[0294] 7. Deal with Wallet Update

[0295] Perform

[0296] 8 List Data Types

[0297] 9 Create or Amend?

[0298] 10 Deal with Response

[0299] 8. List Data Types

[0300] List all the types of data held in the wallets. The netizen canselect one from this list.

[0301] 9. Create or Amend?

[0302] Ask the netizen whether she wants to create new data or amendexisting data.

[0303] 10. Deal with Response

[0304] Perform Section D

[0305] 11. Synchronize Server and Client Wallets

[0306] Perform §1 of Section H.

[0307] 12. Set up Browser

[0308] Perform

[0309] 13 Check the Internet Access Device

[0310] 14 Deal with Result

[0311] 13. Check the Internet Access Device

[0312] Perform §1 of Section B.

[0313] 14. Deal with Result

[0314] Perform

[0315] 15 Download Browser and Local Software, if the Internet accessdevice is up to the job of holding and managing a client0side serverwallet.

[0316] Else

[0317] 14 Download Browser Software

[0318] 15. Download Browser and Local Software

[0319] Download the software required on the IAD for managing the use ofa wallet during a web session. Download the software that enables anetizen to update and manage her wallet on her IAD.

[0320] 16. Download Browser Software

[0321] Download the software required on the IAD for managing the use ofa wallet during a web session.

[0322] Archive

[0323] Allow the netizen to specify the location of her archive files.Allow netizen to supply a date. Copy the audit trail occurring beforethis date, the orders, donations, and medical records ‘last updated’prior to this date, addresses ‘last used ’ prior to this date to thelocation specified and delete them from the wallet.

[0324] 18. View Archive

[0325] Allow the netizen to specify the location of her archive files.Display the various sections of the archive on request and allow thenetizen to select portions of it for restoration to the wallet.

[0326] 19. Deal with Reports

[0327] Perform

[0328] 20 Report on Audit Trail, if netizen selects “Audit Trail”

[0329] 21 Deal with Specified Data Type, if netizen selects “Data”

[0330] 25 Report on Orders Placed on Member Sites, if netizen selects“Member Site Orders”

[0331] 26 Report on Orders Placed on Non-member Sites, if netizenselects “Nonmember Site Orders”

[0332] 20. Report on Audit Trail

[0333] List all wallet database amendments in time and date order. Thisincludes records of data given by the netizen to a site from her walletas well as records of data given by a site to the netizen's wallet.

[0334] 21. Deal with Specified Data Type

[0335] Perform

[0336] 22 List Data Types

[0337] 23 List Data Sets for Data Type

[0338] 24 Display Data for Data Set

[0339] 22. List Data Types

[0340] Perform §8 in Section C.

[0341] 23. List Data Sets for Data Type

[0342] Perform §9 in Section D.

[0343] 24. Display Data for Data Set

[0344] Perform §13 in Section D.

[0345] 25. Report on Orders Placed on Member Sites

[0346] Display the order details in creation date order within supplier.

[0347] 26. Report on Orders Placed on Non-member Sites

[0348] Display orders in creation date order.

Section D: Deal with Response

[0349] Perform

[0350] 1 Deal with Create, if netizen selects “Create”

[0351] Else

[0352] 8 Deal with Amend Data

[0353] 1. Deal with Create

[0354] Perform

[0355] 2 Present Form for Data Type

[0356] 3 Validate One Datum, until all data is valid

[0357] 7 Record Data in Wallet

[0358] 2. Present Form for Data Type

[0359] Display the form that fits the data type selected by the netizenfrom the list of data types.

[0360] 3. Validate One Datum

[0361] Perform

[0362] 4 Validate One Datum, until the datum is valid

[0363] 4. Validate One Datum

[0364] Perform

[0365] 5 Validate Datum

[0366] 6 Display Error Messages, if invalid datum entered

[0367] 5. Validate Datum

[0368] Apply the relevant validation rules to the datum.

[0369] 6. Display Error Messages

[0370] Display error message corresponding to validation rule broken.

[0371] 7. Record Data in Wallet

[0372] Record the new data in the netizen's wallet database.

[0373] 8. Deal with Amend Data

[0374] Perform

[0375] 9 List Data Sets for Data Type

[0376] 10 Alter/Delete?

[0377] 11 Deal with Answer

[0378] 9. List Data sets for Data Type

[0379] List the names or meaningful identifiers of the sets of data forthe data type already selected. The netizen can select one set of data

[0380] 10. Alter/Delete?

[0381] Invite the netizen to indicate whether she wishes to alter thedata within the selected set or to delete the whole set.

[0382] 11. Deal with Answer

[0383] Perform

[0384] 12 Deal with Delete, if the netizen selects “Delete”

[0385] Else

[0386] 15 Deal with Alter

[0387] 12. Deal with Delete

[0388] Perform

[0389] 13 Display Data for Data Set

[0390] 14 Delete Data Set, if netizen confirms deletion

[0391] 13. Display Data for Data Set

[0392] Display the data composing the data set selected from the list ofdata set names. Ask netizen to confirm that she wishes to delete thisset.

[0393] 14. Delete Data Set

[0394] Delete the data set from the wallet database.

[0395] 15. Deal with Alter

[0396] Perform

[0397] 16 Display Data for Data Set

[0398] 17 Validate One Datum, until all data are valid

[0399] 18 Record Alterations

[0400] 16. Display Data for Data Set

[0401] Perform §12 from Section D.

[0402] 17. Validate One Datum

[0403] Perform §3 from Section D.

[0404] 18. Record Alterations

[0405] Record the altered data on the netizen's wallet database.

[0406] Section E: Deal with Member

[0407] 1 Present Unique Identifier Form

[0408] 2 Deal with Identifier Input

[0409] 1. Present Unique Identifier Form

[0410] Perform §4 of Section A.

[0411] 2. Deal with Identifier Input

[0412] Perform

[0413] 3 Deal with Unknown Identifier, if unknown identifier is entered

[0414] 15 Deal with Facilities, if known identifier is entered, thenetizen's wallet is server-side, and netizen is not engaged in a websession.

[0415] 3. Deal with Unknown Identifier

[0416] Perform

[0417] 4 Try Again?

[0418] 5 Deal with Reply

[0419] 4. Try Again?

[0420] Tell the netizen that the identifier entered is not known to theregister and invite her to try again.

[0421] 5. Deal with Reply

[0422] Perform

[0423] 6 Deal with Member, if netizen wishes to try again

[0424] 7 Deal with Identifier Revision

[0425] 6. Deal with Member

[0426] Perform Section E

[0427] 7. Deal with Identifier Revision

[0428] Perform

[0429] 8 Deal with Stage One

[0430] 11 Deal with Stage Two, if full name, date and place of birthfound

[0431] 14 Present User Name, if special question answered correctly

[0432] 8. Deal with Stage One

[0433] Perform

[0434] 9 Ask for Name, Place & Date of Birth

[0435] 10 Deal with Applicant, if full name, date and place of birth notfound

[0436] 9. Ask for Name, Place & Date of Birth

[0437] Ask for the netizen for her surname and also for her date andplace of birth.

[0438] 10. Deal with Applicant

[0439] Perform §3 in Section A.

[0440] 11. Deal with Stage Two

[0441] Perform

[0442] 12 Ask Special Question

[0443] 13 Deal with Applicant, if special question not answeredcorrectly

[0444] 12. Ask Special Question

[0445] Display the special question recorded by the netizen on theregister.

[0446] 13. Deal with Applicant

[0447] Perform §3 in Section A.

[0448] 14. Present User Name

[0449] Display the user name belonging to this netizen and invite her toenter a new password.

[0450] 15. Deal with Facilities

[0451] Perform Section C

[0452] Section F: Deal with Desk Top Usage

[0453] In this Section to communicate with the netizen, use the languageselected in §1 until the end of §7: from §8 use the preferred languagenoted in her wallet.

[0454] Perform

[0455] 1 Deal with Registration Question

[0456] 2 Deal with Registration Answer

[0457] 1. Registered?

[0458] Perform §1 in Section A.

[0459] 2. Deal with Registration Answer

[0460] Perform

[0461] 3 Deal with Applicant, if netizen says “I have not registeredyet”.

[0462] 4 Deal with Member Locally, if there is at least one walletdatabase on the IAD

[0463] Else

[0464] 9 Deal with Member

[0465] 3. Deal with Applicant

[0466] Automatically access the registry site and perform §3 of SectionA.

[0467] 4. Deal with Member Locally

[0468] Perform

[0469] 5 Present Unique Identifier Form

[0470] 6 Deal with Input

[0471] 5. Present Unique Identifier Form

[0472] Perform §5 in Section A on the IAD.

[0473] 6. Deal with Input

[0474] Perform

[0475] 7 Deal with Identifier Input, if the netizen's wallet is not onthe IAD

[0476] Else

[0477] 8 Deal with Facilities

[0478] 7. Deal with Identifier Input

[0479] Automatically access the registry site and perform §2 of SectionE.

[0480] 8. Deal with Facilities

[0481] Perform Section C on the IAD.

[0482] 9. Deal with Member

[0483] Automatically access the registry site and perform Section E.

[0484] Section G: Deal with Web Session Usage

[0485] In this Section to communicate with the netizen use the languageselected in §1 until the end of §2. From §12 use the preferred languagenoted in her wallet.

[0486] Perform

[0487] 1 Deal with Registration Question

[0488] 2 Deal with Registration Answer

[0489] 12 Deal with Mode

[0490] 13 Deal with One Site, until the netizen selects “Close Wallet”

[0491] 16 Deal with Wallet Session End

[0492] 1. Deal with Registration Question

[0493] Perform §1 in Section A.

[0494] 2. Deal with Registration Answer

[0495] Perform

[0496] 3 Deal with Applicant, if netizen says “I have not registeredyet”.

[0497] 4 Deal with Member Locally, if there is at least one walletdatabase on the IAD

[0498] Else

[0499] 9 Deal with Member at Registry

[0500] 3. Deal with Applicant

[0501] Automatically access the registry site and perform §3 of SectionA.

[0502] 4. Deal with Member Locally

[0503] Perform

[0504] 5 Present Unique Identifier Form

[0505] 6 Consult Register, if the netizen's wallet is not on the IAD

[0506] 5. Present Identifier Form

[0507] Perform §5 in Section A on the IAD.

[0508] 6. Consult Register

[0509] Perform

[0510] 7 Access Registry Server

[0511] 8 Deal with Identifier Input

[0512] 7. Access Registry Server

[0513] Access the registry site server.

[0514] 8. Deal with Identifier Input

[0515] Perform §2 of Section E.

[0516] 9. Deal with Member at Registry

[0517] Perform

[0518] 10 Access Registry Server

[0519] 11 Deal with Member

[0520] 10. Access Registry Server

[0521] Perform §7 of Section G.

[0522] 11. Deal with Member

[0523] Perform Section E.

[0524] 12. Deal with Mode

[0525] Perform Section H.

[0526] 13. Deal with One Site

[0527] Perform

[0528] 14 Supply Netizen Details, when the netizen sends a URL in orderto access a site or when she opens her wallet within a web session byclicking on the wallet browser icon

[0529] 15 Supply and Capture Data

[0530] 14. Supply Netizen Details

[0531] Send nick name, gender, preferred languages, wallet language,home (country or trading zone) currency and import currency for thecurrent wallet to the site being accessed.

[0532] 15. Supply and Capture Data

[0533] Perform Section K.

[0534] 16. Deal with Wallet Session End

[0535] Perform

[0536] 17 Deal with Wallet Location, if Thin Client =No

[0537] 21 Deal with Portability, if wallet is to be stored client-side

[0538] 22 Close Wallet

[0539] 17. Deal with Wallet Location

[0540] Perform

[0541] 18 Client/Server?

[0542] 19 Move Wallet from Server to Client, if the netizen selects“Client-side” and her wallet is server-side

[0543] 20 Move Wallet from Client to Server, if the netizen selects“Server-side” and her wallet is client-side

[0544] 18. Client/Server

[0545] Perform §4 of Section B.

[0546] 19. Move Wallet from Server to Client

[0547] Perform §21 of Section H

[0548] 20. Move Wallet from Server to Client

[0549] Perform §22 of Section H.

[0550] 21. Deal with Portability

[0551] Perform Section J.

[0552] 22. Close the Wallet

[0553] Close the netizen's wallet.

[0554] Section H: Deal with Mode

[0555] Perform

[0556] 1 Have Diskette Wallet?

[0557] 2 Deal with Diskettes, if netizen has a diskette wallet

[0558] 12 Synchronize Server and Client Wallets, if the netizen's walletis on both the client and the server

[0559] 13 Create Temporary Wallet, if the netizen's wallet is on neitherthe client nor the server

[0560] 14 Deal with Client/Server, if Thin Client=“No”

[0561] 23 Display Wallet Open Button

[0562] 1. Have Diskette Wallet?

[0563] Ask netizen whether she has a diskette wallet.

[0564] 2. Deal with Diskettes

[0565] Perform

[0566] 3 Deal with One Diskette, until netizen says “No” in response to“Another Diskette?”

[0567] 3. Deal with One Diskette

[0568] Perform

[0569] 4 Insert Diskette, if no diskette containing her wallet has beeninserted

[0570] 5 Another Diskette? if first diskette has been dealt with

[0571] 6 Deal with Wallets, if netizen inserts a diskette containing(part of) her wallet into IAD diskette reader

[0572] 11 Wallet not on Diskette, if no part of the netizen's wallet ison the diskette

[0573] 4. Insert Diskette

[0574] Invite the netizen to insert a diskette containing her walletinto the diskette reader of her IAD and to click “OK” when it has beeninserted.

[0575] 5. Another Diskette

[0576] Ask the netizen whether her diskette wallet has a furtherdiskette and invite her to click “OK” when this further diskette hasbeen inserted.

[0577] 6. Deal with Wallets

[0578] Perform

[0579] 7 Integrate Wallet with IAD Wallet-copy, if the netizen'swallet-copy is on the IAD

[0580] 8 Integrate Wallet with Server Wallet-copy, if the netizen'swallet-copy is on the server but not on the IAD

[0581] 9 Copy Wallet to IAD, if the IAD is not a Thin Client and thenetizen's wallet is on neither the IAD nor the server

[0582] Else

[0583] 10 Copy Wallet to Server

[0584] 7. Integrate Wallet with Wallet-copy

[0585] Integrate the wallet (part) on the diskette with the wallet-copyon the IAD.

[0586] 8. Integrate Wallet with Wallet-copy

[0587] Integrate the wallet (part) on the diskette with the wallet-copyon the server.

[0588] 9. Copy Wallet to IAD

[0589] Copy the wallet (part) on the diskette to the IAD.

[0590] 10. Copy Wallet to Server

[0591] Copy the wallet (part) on the diskette to the server.

[0592] 11. Wallet not on Diskette

[0593] Tell the netizen that no part of her wallet is on the diskcurrently in the diskette reader of the IAD.

[0594] 12. Synchronize Server and Client Wallets

[0595] Synchronize the wallet on the server and the wallet on the IAD.

[0596] 13. Create a Temporary Wallet

[0597] Create a server-side wallet for the netizen.

[0598] 14. Deal with Client/Server

[0599] Perform

[0600] 15 Client-side/Server-side?

[0601] 16 Deal with Client/Server Answer

[0602] 15. Client-side/Server-side?

[0603] Perform §4 of Section B.

[0604] 16. Deal with Client/Server Answer

[0605] Perform

[0606] 17 Deal with Two-wallet Situation, if the netizen's wallet existsboth on the client and on the server

[0607] Else

[0608] 20 Deal with Single Wallet

[0609] 17. Deal with Two-wallet Situation

[0610] Perform

[0611] 18 Delete Wallet from Server, if the netizen selects“Client-side”

[0612] Else

[0613] 19 Delete Wallet from Client

[0614] 18. Delete Wallet from Server

[0615] Delete the netizen's wallet from the server.

[0616] 19. Delete Wallet from Client

[0617] Delete the netizen's wallet from the client.

[0618] 20. Deal with Single Wallet

[0619] Perform

[0620] 21 Move Wallet from Server to Client, if the netizen selects“Client” and her wallet is on the server

[0621] 22 Move Wallet from Client to Server, if the netizen selects“Server” and her wallet is on the client

[0622] 21. Move Wallet from Server to Client

[0623] Copy the netizen's wallet database from the server to the clientand delete it from the server.

[0624] 22. Move Wallet from Client to Server

[0625] Copy the netizen's wallet database from the client to the serverand delete it from the client.

[0626] 23. Display Wallet Open Button

[0627] Display a button labeled “Wallet Open” in the IAD browser toremind the netizen not to leave her IAD unattended while her wallet isopen. By clicking on the button she can close her wallet.

[0628] Section J: Deal with Portability

[0629] 1 Portable/Not Portable?

[0630] 2 Deal with Porting, if the netizen wishes to have a portablewallet

[0631] 1. Portable/Not Portable?

[0632] Ask the netizen whether she wishes her client-side wallet to beportable or not.

[0633] 2. Deal with Porting

[0634] 3 Port Subset of Wallet Data?

[0635] 4 Deal with Subset, if the netizen wishes to port a subset of herwallet data

[0636] 7 Insert Diskette, if first diskette has not been inserted

[0637] 8 Deal with One Diskette, until the required subset of thenetizen's wallet database has been copied

[0638] 14 Another Diskette, if current diskette has been filled and therequired subset has not been completely copied

[0639] 3. Port Subset of Wallet Data?

[0640] Ask the netizen whether she wishes to port all the data in herwallet or only a subset of it.

[0641] 4. Deal with Subset

[0642] Perform

[0643] 5 Display List of Data Types

[0644] 6 Note Selection

[0645] 5. Display List of Data Types

[0646] Display a list of the types of data, e.g. address book, healthrecord, insurance details, bankcard details, driver's license details,personal dimensions, baskets, orders.

[0647] 6. Note Selection

[0648] Note the types of data that the netizen wishes to port.

[0649] 7. Insert Diskette

[0650] Ask the netizen to insert the first diskette for her portablewallet.

[0651] 8. Deal with One Diskette

[0652] Perform

[0653] 9 No Space on Diskette, if no part of the netizen's wallet is onthe diskette and there is no empty space on it

[0654] 10 Diskette not Formatted, if the diskette is not formatted

[0655] 11 Port to Diskette

[0656] 9. No Space on Diskettes

[0657] Tell the netizen that there is no space on the currently inserteddiskette, so the creation of her portable diskette wallet cannotproceed.

[0658] 10. Diskette not Formatted

[0659] Tell the netizen that the diskette in the diskette reader has notbeen formatted, so the creation of her portable diskette wallet cannotproceed.

[0660] 11. Port to Diskette

[0661] Perform

[0662] 12 Integrate Wallet with Wallet Copy, if the diskettecontains(part of) her wallet

[0663] 13 Copy Part of Wallet

[0664] 12. Integrate Wallet with Wallet Copy

[0665] Perform §8 of Section H.

[0666] 13. Copy Part of Wallet

[0667] Copy to the current diskette any part of the wallet that has notalready been copied during this wallet session and which is a part ofthe data subset that the netizen wants to port. Copy as much as will fitonto the diskette, overwriting any parts of the diskette's contents thatare the netizen's wallet but not overwriting anything else.

[0668] 14. Another Diskette

[0669] Ask the netizen to insert another diskette for her portablewallet and to click “OK” when she has inserted it.

[0670] Section K: Supply and Capture Data

[0671] Perform

[0672] 1 Deal with Member Site, if the netizen is visiting a member site

[0673] 17 Deal with Non-member Site

[0674] 1. Deal with Member Site

[0675] Perform

[0676] 2 Deal with Organization

[0677] 3 Deal with Field Labels, if page code includes field labels

[0678] 14 Deal with Baskets, if the netizen is visiting a catalogue site

[0679] 15 Deal with Returns, if site accepts returns

[0680] 15 Read Site Record, if the netizen leaves the site

[0681] 2. Deal with Organization

[0682] Perform Section L

[0683] 3. Deal with Field Labels

[0684] Perform

[0685] 4 Display Defaults

[0686] 5 Deal with Data

[0687] 4. Display Defaults

[0688] Display a default value for each field label from the wallet.(Absence of a default value in the wallet is displayed as spaces).

[0689] 5. Deal with Data

[0690] Perform

[0691] 6 Deal with Field Label, if the netizen clicks a field labelbutton

[0692] 13 Send Page, if netizen clicks “Submit” and all mandatory fieldshave data

[0693] 6. Deal with Field Label

[0694] Perform

[0695] 7 List Data Options, if there is data for the field label in thewallet

[0696] 8 Deal with Result

[0697] 7. List Data Options

[0698] Display the list of data items or the names of the data setsfound and include “None of the above” on the list. The netizen canselect one of the items or “None of the above”.

[0699] 8. Deal with Result

[0700] Perform

[0701] 9 Deal with Display Data, if the netizen selects an item fromlist

[0702] 12 Activate Create Datum, if the netizen selects “None of theabove” or there is no data for the field label in the wallet

[0703] 9. Deal with Display Data

[0704] Perform

[0705] 10 Display Data

[0706] 11 Display Data on Page

[0707] 10. Display Data

[0708] Display the data for the option selected from the list and askthe netizen to indicate or confirm the required data set.

[0709] 11. Display Data on Page

[0710] Display, within the site page at the place indicated by the fieldlabel, the datum or data set indicated or confirmed. Record that thesedata are being given to the current site on the current date and at thecurrent time.

[0711] 12. Activate Create Datum

[0712] Perform §1 of Section D within the wallet, where “Datum” is thedata type required by the field label.

[0713] 13. Send Page

[0714] Transmit the page to the current site server.

[0715] 14. Deal with One Basket

[0716] Perform Section M.

[0717] 15. Deal with Returns

[0718] Perform section Q.

[0719] 16. Read Site Record

[0720] Retrieve from the site database any data held for the netizenthat has not been supplied by the wallet.

[0721] 17. Deal with Non-member Site

[0722] Perform

[0723] 18 Make Copy of Order, if the netizen selects “Copy order”

[0724] 19 Deal with Field Labels, if page code includes field labels

[0725] 18. Make Copy of Order

[0726] Copy the data in the fields on the current site page into thenetizen's wallet as unstructured text with line breaks as on the sitepage.

[0727] 19. Deal with Field Labels

[0728] Perform

[0729] 20 Deal with Field Label, if the netizen clicks “Not OK” andthere is data in the wallet

[0730] 20. Deal with Field Label

[0731] Perform

[0732] 21 Insert Default

[0733] 22 List Data Options, if there is data for the field label in thewallet

[0734] 23 Deal with Result

[0735] 21. Insert Default

[0736] Display the default value for the current field label in theappropriate field on the form.

[0737] 22. List Data Options

[0738] Perform §7 of Section K.

[0739] 23. Deal with Result

[0740] Perform

[0741] 22 Display Data, if the netizen selects an item from the list

[0742] 23 Deal with Keying, if the netizen selects “None of the above”or there is no data for the field label in the wallet

[0743] 24. Display Data

[0744] Perform §10 of Section K

[0745] 25. Deal with Keying

[0746] 26 Please Key Datum

[0747] 27 Record Datum Keyed

[0748] 26. Please Key Datum

[0749] Ask the netizen to enter data into the field on the site page.

[0750] 27. Record Datum Keyed

[0751] Record the data entered and the field label and link these two onthe wallet base. Record that this datum is being given to the currentsite on the current and at the current time.

[0752] Section L: Deal with Organization

[0753] Perform

[0754] 1 Representing an Organization?

[0755] 2 Deal with Answer

[0756] 1. Representing an Organization?

[0757] Ask the netizen whether she is authorized to represent anorganization on the current site.

[0758] 2. Deal with Answer

[0759] Perform

[0760] 3 Deal with Authorization, if the netizen answers “Yes”

[0761] 12 Deal with Bonus Points

[0762] 3. Deal with Authorization

[0763] Perform

[0764] 4 Deal with Authorized Organizations, if the site lists thenetizen as authorized to represent any organization

[0765] 9 Deal with No Authorization

[0766] 4. Deal with Authorized Organizations

[0767] Perform

[0768] 5 List Authorized Organizations

[0769] 6 Deal with Response

[0770] 5. List Authorized Organizations

[0771] List the organizations which the netizen is authorized torepresent and display their names plus “None of the above”. Invite thenetizen to select the one she is currently representing, if any.

[0772] 6. Deal with Response

[0773] Perform

[0774] 7 Note Selected Organization, if the netizen selects anorganization

[0775] 8 Deal with Bonus Points, if purchasing is possible on thecurrent site and bonus points are offered on purchases

[0776] 7. Note Selected Organization

[0777] Make a note of the details for the organization selected by thenetizen from the list.

[0778] 8. Deal with Bonus Points

[0779] Perform Section R.

[0780] 9. Deal with No Authorization

[0781] Perform

[0782] 10 Not Authorized

[0783] 11 Deal with Bonus Points

[0784] 10. Not Authorized

[0785] Tell the netizen that she is not authorized by the site torepresent any organization in her dealings with the current site.

[0786] 11. Deal with Bonus Points

[0787] Perform Section R.

[0788] 12. Deal with Bonus Points

[0789] Perform Section R.

[0790] Section M: Deal with One Basket

[0791] Since the site being visited is a catalogue site, the netizen canselect a category of product; thumbnail pictures are then displayed forthe products in this category. She can select one of these thumbnails;information about the product shown in the thumbnail is then downloadedand displayed, e.g. large picture of the product, description, size,color, other products bundled with it, reviews, price, sale price,discounted price, special price, bundle price, bonus points per item.Any rules about its incompatibility with other products and any salestax rate are also downloaded. The netizen can indicate that she wishesto put the product or bundle of products displayed into her currentbasket. This basket is held in her wallet database.

[0792] Perform

[0793] 1 Deal with Old Baskets, if the netizen clicks “Incompletebaskets” in wallet

[0794] 9 Deal with Addition to Basket, if the netizen clicks “Put inbasket” on current web page

[0795] 12 Deal with Basket Contents, if the netizen clicks “View basketcontents” and a basket has been created

[0796] 11. Deal with Old Baskets

[0797] Perform

[0798] 2 List Old Baskets

[0799] 3 Display Basket Details

[0800] 4 Deal with Result

[0801] 2. List Old Baskets

[0802] List all the Incomplete Baskets in date and time order. Invitethe netizen to select one.

[0803] 3. Display Basket Details

[0804] Display the order lines for the basket selected.

[0805] 4. Deal with Result

[0806] Perform

[0807] 5 Delete Basket, if the netizen clicks “Delete basket”

[0808] Else

[0809] 6 Deal with Amalgamation, if the netizen clicks “Amalgamate” andthe basket belongs to the current site

[0810] 5. Delete Basket

[0811] Delete the selected basket from the netizen's wallet.

[0812] 6. Deal with Amalgamation

[0813] Perform

[0814] 7 Make Old Basket Current, if a Current Basket does not exist

[0815] 8 Amalgamate, if the product compatibility rules do not excludethis amalgamation.

[0816] 7. Make 10d Basket Current

[0817] Change the status of the selected Basket from Incomplete toCurrent. Display “View basket contents”.

[0818] 8. Amalgamate

[0819] Copy the contents of the selected Incomplete Basket to theCurrent Basket and delete the Incomplete Basket.

[0820] 9. Deal with Addition to Basket

[0821] Perform

[0822] 10 Create Basket, if a Current Basket does not exist

[0823] 11 Record Addition, if the product compatibility rules do notexclude this addition given the other items already in the basket.

[0824] 10. Create Basket

[0825] Create a Current Basket in the netizen's wallet. Display “Viewbasket contents”.

[0826] 11. Record Addition

[0827] Record the product details of the selected product or bundle ofproducts in the current basket within the wallet database: description,price, and quantity.

[0828] 12. Deal with Basket Contents

[0829] Perform

[0830] 13 Display Contents of Basket

[0831] 14 Deal with Response, if the netizen clicks “OK”

[0832] 13. Display Contents of Basket

[0833] Display all the order lines within the current basket. Thenetizen can amend the quantity in each line. She can click “OK” toindicate that she has finished.

[0834] 14. Deal with Response

[0835] Perform

[0836] 15 Record Amendments, if there are amendments

[0837] 16 Go through Checkout, if the netizen clicks “Basket Complete”and the current basket contains order lines

[0838] 15. Record Amendments

[0839] Record any quantity change for an order line belonging to thebasket. Delete those order lines with a zero quantity. Redisplay theorder lines in the basket.

[0840] 16. Go through Checkout

[0841] Perform

[0842] 17 Calculate Bonus

[0843] 18 Deliver Basket

[0844] 19 Deal with Netizen Payment, if carriage costs have beenaccepted and the netizen clicks “Payment”

[0845] 17. Calculate Bonus

[0846] Calculate total bonus points for the basket. Divide the totalbonus points among the beneficiary organizations for the current basketaccording to the recorded percentages. Display order lines each with aprice and bonus points plus total price and bonus points. Display atable showing the bonus point allocation to beneficiary organizations.

[0847] 18. Deliver Basket

[0848] Perform Section N.

[0849] 19. Deal with Netizen Payment

[0850] Perform Section P.

[0851] Section N: Deliver Basket

[0852] Perform

[0853] 1 Deal with One Address, until each order line in basket has adelivery address and the netizen clicks “OK”

[0854] 2 Deal with One Delivery, until each delivery address has beendealt with

[0855] 22 Deal with Gift Wrapping, if the netizen clicks “Gift wrappingservice”

[0856] 1. Deal with One Address

[0857] Perform Section O.

[0858] 2. Deal with One Delivery

[0859] Perform

[0860] 3 Select Fulfillment Depot

[0861] 4 Deal with Tariff, if destination is in a different trading zonefrom that of the fulfillment depot

[0862] 7 Reserve Stock

[0863] 8 Deal with Dispatch Delay, if the delivery has more than onedispatch delay

[0864] 12 Deal with Journey Duration, until each sub-delivery has beendealt with

[0865] 13 Deal with Carriage

[0866] 20 Display Delivery

[0867] 21 Record Carriage Charges

[0868] 3. Select Fulfillment Depot

[0869] The details for each fulfillment depot (the region in which it islocated and the regions supplied from it—no region is supplied by morethan one depot) owned by the current site are held on the Carriage andTariffs Server (CATS). The netizen's wallet sends the delivery (deliveryaddress and order lines) to CATS which then selects the fulfillmentdepot that supplies the region of the delivery address and calculatesales tax, if any. CATS sends the sales tax, if any, and the fulfillmentdepot identifier and region back to the IAD along with a statement aboutwhether the destination of the delivery is in a different trading zonefrom the fulfillment depot plus rules under which no duty is due eventhough the two zones are involved. The sales tax, if any, is displayedon the IAD. Record sales tax, fulfillment depot and region, and thestatement about trading zones.

[0870] 4. Deal with Tariff

[0871] Perform

[0872] 5 Tariff Codes?

[0873] 6 Calculate Tariffs, if tariff codes have been supplied

[0874] 5. Tariff Codes?

[0875] Invite the netizen to enter the import tariff code for each line.She is told the conditions for the current country under which no importduty is payable. Record import tariff code for each line, if any

[0876] 6. Calculate Tariffs

[0877] Send the order lines along with tariff codes to CATS. This serverdetermines the tariff rate and calculates the import duty for the oneand sends these results back to the IAD. The IAD displays the delivery(all the order lines for the same address) showing import duty for thoselines to which it applies.

[0878] 7. Reserve Stock

[0879] Send the delivery to the Site Server. This server reserves thestock for one hour, (when the order is confirmed, it is fulfilled out ofreserved stock). It also determines the dispatch delay for each orderline. If the same dispatch delay cannot be given for all items in anorder line, it splits the order line. It returns the delivery to the IADwith a dispatch delay attached to each order line plus for each orderline the following details: weight, height, width, and length; gift wraplength per item, permitted transit methods, weight/volume packagingpercentage, weight and/or volume indicator. The IAD records this dataand displays the dispatch delays to the netizen.

[0880] 8. Deal with Dispatch Delay

[0881] Perform

[0882] 9 Change Dispatch Delays?

[0883] 10 Record New Dispatch Delays, if the netizen clicks “OK”

[0884] 11 Create Sub-deliveries, if the delivery has more than onedispatch delay

[0885] 9. Change Dispatch Delays?

[0886] Tell the netizen that she can enter new dispatch delays that arehigher, up to a specified limit, than the old ones supplied by the SiteServer, if she wishes. Ask her to click “OK” when she has finished.

[0887] 10. Record New Dispatch Delays

[0888] Where the netizen has not entered a new dispatch delay set itequal to the old dispatch delay reported by the Site Server for thecurrent delivery. Record the old and the new dispatch delays—one pairfor each order line.

[0889] 11. Create Sub-deliveries

[0890] Group the order lines in the delivery into sub-deliveries, sothat all members of a sub-delivery have the same dispatch delay. Recordthese new sub-deliveries and link them to the delivery. Delete the dummysub-delivery.

[0891] 12. Deal with Journey Duration

[0892] Perform Section S.

[0893] 13. Calculate Carriage

[0894] Perform

[0895] 14 Send Sub-delivery to CATS

[0896] 15 Calculate Carriage, until each sub-delivery has been dealtwith π19 Report Carriage Charges

[0897] 14. Send Sub-delivery to CATS

[0898] Send the sub-deliveries for the current delivery to CATS alongwith dimensions, weight, packaging weight percentage, and packagingvolume percentage for each product involved. Also send the selectedtransit method, fulfillment depot region and destination region for eachsub-delivery.

[0899] 15. Calculate Carriage

[0900] Perform

[0901] 16 Calculate by Weight and Volume, until each order line has beendealt with

[0902] 17 Determine Parcels

[0903] 18 Get Charges, until each parcel has been dealt with

[0904] 16. Calculate by Weight and Volume

[0905] Multiply the quantity ordered by the weight per item to give theorder line weight. Multiply the packaging weight percentage by the orderline weight to give the packaging weight. Add the packaging weight tothe order line weight to give total order line weight. Get the carriagecharge for the total order line weight traveling between the origin anddestination supplied using the given transit method.

[0906] Multiply the quantity ordered by the shortest dimension to give‘height’. Multiply the ‘height’ by the other two dimensions to give theorder line volume. Multiply the packaging weight percentage by the orderline volume to give the packaging volume. Add the packaging volume tothe order line volume to give total order line volume. Get the carriagecharge for the total order line volume traveling between the origin anddestination supplied using the given transit method.

[0907] Multiply the packing price per item by quantity ordered to giveorder line packing charge.

[0908] Mark the order line with a “w” if the carriage charge by weightis higher than that the carriage charge by volume. Alternatively Markthe order line with a “v” if the carriage charge by volume is higherthan that the carriage charge by weight.

[0909] 17. Determine Parcels

[0910] Sum the total order line weights for all order lines marked “w”to give the total weight of the w-set. If the total is greater than themaximum allowed weight per parcel for the transit method, then assignitems within the “w” set to parcels without exceeding this maximum.Calculate total weight for each parcel.

[0911] Sum the total order line volumes for all order lines marked “v”to give the total weight of the v-set. If the total is greater than themaximum allowed weight per parcel for the transit method, then assignitems within the “v” set to parcels without exceeding this maximum.Calculate total volume for each parcel.

[0912] 18. Get Charges

[0913] Select lowest carriage charge for each parcel—each parcel is a“w” or a “v” parcel. If it is a “w” parcel then the lowest charge byweight is selected. If it is a “v” parcel then the lowest charge byvolume is selected. Determine carriage price for the transit methodbetween the origin and destination regions. Sum the order line packingcharges to give the total packing charge.

[0914] 19. Report Carriage Charges

[0915] CATS sends the delivery back to the IAD with the sub-deliverylines sorted into parcels (where there is more than one parcel). Itreturns the charges for carriage and packing for each parcel.

[0916] 20. Display Delivery

[0917] On the IAD display the delivery and its component parcels showingthe order lines in each parcel. Display packing charge and carriage foreach parcel. The netizen can click “Accept” to accept the carriage andpacking charges. (She may prefer to repeat Section S).

[0918] 21. Record Carriage Charges

[0919] Record the accepted carriage charges for the parcels composingthe delivery.

[0920] 22. Deal with Gift Wrapping

[0921] Perform Section V.

[0922] Section O: Deal with One Address

[0923] Perform

[0924] 1 List Address Groups, if the netizen clicks “Address groups”

[0925] 2 Deal with Addresses in Group, if the netizen selects an addressgroup

[0926] 6 Whole Basket?

[0927] 7 Deal with Line Selection, if the netizen answers “No” to the‘Whole Basket?’ question

[0928] 16 Deal with Delivery

[0929] 1. List Address Groups

[0930] The address groups (including “All” addresses) in the netizen'swallet are displayed as a list. Invite the netizen to select onecategory that may contain a delivery address for the current basket.

[0931] 2. Deal with Addresses in Group

[0932] Perform

[0933] 3 List Addresses in Group

[0934] 4 Display Address Details, if an address is selected from thelist

[0935] 5 Activate Maintain Datum, if the netizen selects “None of theabove” or there are no addresses in the selected group

[0936] 3. List Addresses in Group

[0937] The addresses belonging to the selected group in the netizen'swallet are displayed along with “None of the above”. Invite the netizento select one address as a delivery address for some or all of the itemsin the current basket.

[0938] 4. Display Address Details

[0939] Display all lines of the address selected from the list togetherwith the name of the organizations and or persons associated with thataddress. Invite the netizen to click “Select this address” afterselecting one or more of the organizations and/or one or more of thepersons associated with the address. Together these will constitute thedestination to which some or all of the items in the basket will bedelivered.

[0940] 5. Activate Maintain Datum

[0941] Perform Section D.

[0942] 6. Whole Basket?

[0943] Ask the netizen whether all the items in her basket are to go tothe selected address.

[0944] 7. Deal with Line Selection

[0945] Perform

[0946] 8 Deal with Line Selection, until netizen clicks “No more orderlines for this delivery address”

[0947] 8. Deal with Line Selection

[0948] Perform

[0949] 9 Which Order Line?

[0950] 10 Mark Order Line

[0951] 11 Deal with Splitting, if it contains more than one item

[0952] 15 Amalgamate Lines, if the product is the same as that of otherorder lines selected for the current address

[0953] 9. Which Order Line?

[0954] Ask the netizen to select an order line for the current address.

[0955] 10. Mark the Order Line

[0956] Put the name of the current destination town and postal code nextto the line to show that it has been selected for the current address.

[0957] 11. Deal with Splitting

[0958] Perform

[0959] 12 Split Line?

[0960] 13 Display Two Lines, if the netizen wishes to split the line

[0961] 14 Record Both Lines, if the netizen clicks “Order line ready”

[0962] 12. Split Line?

[0963] Ask the netizen whether she wishes to split the selected line.

[0964] 13. Display Two Lines

[0965] In place of the selected order line display two order lines. Thenetizen can alter the quantity in the first of these lines and the otherline adjusts, so that the total is always equivalent to the quantity inthe original pre-split line. When she has finished, she can click “Orderlines ready”

[0966] 14. Record Both Lines

[0967] Create new order line for the first of the split lines anddisplay it with the town and postal code of the current address. Amendthe existing order line to reflect the second line—if the quantity iszero delete it.

[0968] 15. Amalgamate Lines

[0969] Amalgamate the current line with any other lines selected for thecurrent address that concern the same product.

[0970] 16. Deal with Delivery

[0971] Perform

[0972] 17 Create Delivery

[0973] 18 Link One Order Line, until all order lines selected for thecurrent delivery address have been dealt with

[0974] 17. Create Delivery

[0975] Create a new delivery and a new dummy sub-delivery. Link thesetwo.

[0976] 18. Link One Order Line

[0977] Perform

[0978] 19 Unlink Order Line, if the order line is linked to a delivery

[0979] 20 Link Order Line

[0980] 19. Unlink Order Line

[0981] Delete any link between the order line and the dummysub-delivery.

[0982] 20. Link Order Line

[0983] Link the order line to the dummy sub-delivery just created.

[0984] Section P: Deal with Netizen Payment

[0985] Perform

[0986] 1 Deal with Insurance

[0987] 5 Deal with Import Duty, if there is import duty

[0988] 8 Get Part Payment, until the grand total for the basket has beenpaid

[0989] 1. Deal with Insurance

[0990] Perform

[0991] 2 Insurance?

[0992] 3 Display Premiums

[0993] 4 Note Premiums, if the netizen accepts any premium quoted

[0994] 2. Insurance?

[0995] Display all the deliveries composing the basket giving for eachone the delivery address. For each sub-delivery give the dispatch delayand journey duration plus the totals for the goods, sales tax (if any),packing, carriage, and bonus points. For each order line show the unitand quantity prices, the bonus points, and the import duty (if any).Also provide the grand totals for the whole basket. Ask the netizenwhether there are any sub-deliveries that she wishes to insure; she cananswer by selecting either the whole basket or particularsub-deliveries.

[0996] 3. Display Premiums

[0997] Send the sub-deliveries selected to CATS to get a premium foreach of these. Receive the premiums quoted by CATS and display them onthe IAD. Invite the netizen to mark the premiums she accepts.

[0998] 4. Note Premiums

[0999] Note the accepted premiums and sum the premiums for the wholebasket and for each sub-delivery. Add the insurance into the total pricefor each sub-delivery and for the whole basket.

[1000] 5. Deal with Import Duty

[1001] Perform

[1002] 6 Pay Import Duty?

[1003] 7 Note Import Duty to be Paid, if the netizen wishes to pay theimport duty

[1004] 6. Pay Import Duty?

[1005] Ask the netizen to mark any sub-deliveries whose import duty shewishes customs to debit via the Internet when the goods arrive atcustoms in the importing country.

[1006] 7. Note Import Duty to be Paid

[1007] Note for the selected sub-deliveries that their import duty is tobe paid via the Internet.

[1008] 8. Get Part Payment

[1009] Perform

[1010] 9 How Pay? if the netizen represents an organization

[1011] 10 Deal with Payment Method

[1012] 14 Send to Site and Registry

[1013] 9. How Pay?

[1014] Ask the netizen whether she wishes to pay by bankcard or via anaccount for the organization she is representing.

[1015] 10. Deal with Payment Method

[1016] Perform Section T.

[1017] 11. Send to Site and Registry

[1018] The IAD sends the basket details excluding any bankcard detailsto the site server for fulfillment.

[1019] Where import duty is to be paid via the Internet, ask the packersto put the sub-delivery number on the parcels composing it for theattention of customs in the destination country.

[1020] The IAD sends all basket details to the registration serverexcept the individual order lines and any division of sub-deliveriesinto parcels.

[1021] Section Q: Deal with Returns

[1022] Perform

[1023] 1 Display Recent Returns Received, if the netizen clicks “ConfirmReturns”

[1024] 2 Make a Return, if the netizen clicks “Return Goods”

[1025] 1. Display Recent Returns Received

[1026] The site displays a list of returns received by the companyowning the site from the netizen since a specified date. Note the returndates in the netizen's wallet.

[1027] 2. Make a Return

[1028] Perform

[1029] 3 Display Return Form

[1030] 4 Send Return Form, if the netizen clicks “Finished”

[1031] 5 Display Return Identifier, if the site supplies a ReturnIdentifier

[1032] 3. Display Return Form

[1033] Display the return form from the netizen's wallet. She can enterdescriptions of the goods being returned.

[1034] Send Return Form

[1035] Send form to the site server by clicking “Submit”.

[1036] 5. Display Return Identifier

[1037] The site replies with a return number. Store it in her wallet.She can print out a return slip that includes the number and thedescription of the goods. This slip should be included in the returnparcel to identify it.

[1038] Section R: Deal with Bonus Points

[1039] Perform

[1040] 1 Assign Bonus Points?

[1041] 2 Deal with Defaults, if the netizen answers “Yes”

[1042] Deal with Bonus Point Assignment, if the netizen answers “Yes” tothe §1 question and either there are no default beneficiaryorganizations or there are some but the netizen does not want to usethem

[1043] 1. Assign Bonus Points?

[1044] Ask the netizen whether any bonus points earned on purchases madeduring the current visit are to be donated to any organization(s)including the one she is representing, (if she is representing any).

[1045] 2. Deal with Defaults

[1046] Perform

[1047] 3 Display Organization Defaults, if the netizen is buying onbehalf of an organization and there are any default beneficiaryorganizations for it

[1048] 4 Display Netizen Defaults, if the netizen is not buying onbehalf of an organization but has one or more default beneficiaryorganizations

[1049] 3. Display Organization Defaults

[1050] Display the list of organizations held as default beneficiariesfor the purchasing organization (which may include the purchasingorganization itself), together with the percentage assigned to eachorganization. Invite the netizen to accept or reject the defaults as awhole.

[1051] 4. Display Netizen Defaults

[1052] Display the list of organizations held as default beneficiariesfor the netizen, together with the percentage assigned to eachorganization. Invite the netizen to accept or reject the defaults as awhole.

[1053] 5. Deal with Bonus Point Assignment

[1054] Perform

[1055] 6 Deal with One Organization, until the netizen clicks “Nofurther organizations”

[1056] 11 Deal, with Bonus Point Assignment, if more than onebeneficiary organization has been selected

[1057] 6. Deal with One Organization

[1058] Perform

[1059] 7 List Organizations from Wallet, if there are any organizationnames within her wallet

[1060] 8 Deal with Result

[1061] 7. List Organizations from Wallet

[1062] Display a list of all the organization names recorded in thewallet plus “None of the above”. Invite the netizen to select anorganization that is to receive some or all of the bonus points for theorders she is about to place.

[1063] 8. Deal with Result

[1064] 9 Activate Create Datum, if there are no organizations within thenetizen's wallet or the netizen selects “None of the above

[1065] Else

[1066] 10 Note Bonus Point Organization

[1067] 9. Activate Create Datum

[1068] Perform Section D where the data type is organization (includingthe relationships that the netizen or purchasing organization has tothis new organization).

[1069] 10. Note Bonus Point Organization

[1070] Note the name of the organization that is to receive at leastsome of the bonus points.

[1071] 11. Deal with Bonus Point Assignment

[1072] Perform

[1073] 12 List Selected Organizations

[1074] 13 Record Percentages

[1075] 12. List Selected Organizations

[1076] Display a list of the selected organizations together withdefault percentages and invite the netizen to accept or to alter thepercentages that define how the bonus points will be distributed amongthe organizations.

[1077] 13. Record Percentages

[1078] Record for each selected organization the percentage of the bonuspoints that it is to receive for baskets used on this visit.

[1079] Section S: Deal with Carriage

[1080] Perform

[1081] 1 Carriage Costs?

[1082] 2 Deal with Transit Method Table, if the netizen clicks “Carriagecosts”

[1083] 3 Create Sub-deliveries, if all lines do not have the samejourney duration

[1084] 1. Carriage Costs?

[1085] Display button for “Carriage costs”. Invite the netizen to clickthe button.

[1086] 2. Deal with Transit Method Table

[1087] Perform

[1088] 3 Display Transit Method Table

[1089] 4 Deal with Splitting, until the netizen clicks “No (more) orderline splitting”

[1090] 7 Record Amendments, if the netizen clicks “OK” to accept theTransit Method Table and any modifications she has made

[1091] 3. Display Transit Method Table

[1092] The IAD sends to CATS the permitted transit methods for eachorder line within the delivery. CATS to provides for each transit methodthat is permitted by any line in the delivery, the duration from thefulfillment depot to destination region. Display the dispatch delay forthe current sub-delivery. Display the order lines as the names of therows in a table entitled “Transit Method Table”. Display the variousjourney durations as the names of the columns in the table. In the bodyof the table mark those cells that are permitted for each order line.Invite the netizen to remove the marks from all but one cell for eachorder line. She can do this quickly by selecting the cell she wants toremain marked in each row.

[1093] 4. Deal with Splitting

[1094] Perform

[1095] 5 Split any Order Line?

[1096] 6 Display Two Lines

[1097] 5. Split any Order Line?

[1098] Ask the netizen whether she wishes to split any of the lines inthe Transit Method Table. Invite her to select a line that she wishes tosplit.

[1099] 6. Display Two Lines

[1100] Perform §11 of Section O.

[1101] 7. Record Amendments

[1102] Record any additional order lines. And record the journeyduration for each order line.

[1103] 8. Create Sub-deliveries

[1104] Group the order lines in the sub-delivery into smallersub-deliveries, so that all members of a sub-delivery have the samejourney duration. Record these new sub-deliveries and delete theoriginal sub-delivery.

[1105] Section T: Deal with Payment Method

[1106] Perform

[1107] 1 Deal with Bankcard, if the netizen selects “Bankcard”

[1108] Else

[1109] 9 Deal with Organization Account

[1110] 1. Deal with Bankcard

[1111] Perform

[1112] 2 Deal with Bankcard, until authorized bankcard is presented

[1113] 2. Deal with Bankcard

[1114] Perform

[1115] 3 List All Bankcards

[1116] 4 Which Sub-deliveries

[1117] 5 Request Debit Authority

[1118] 6 Deal with Result

[1119] 3. List All Bankcards

[1120] Display the bankcard details held within the netizen's wallet.

[1121] 4. Which Sub-deliveries

[1122] Ask the netizen to mark the sub-deliveries she wishes to pay forwith the card she has just selected. Tell her that her account will notbe debited until the goods are dispatched. Her account within her walletwill however be debited so that she can view her commitments.

[1123] 5. Request Debit Authority

[1124] Send debit for the grand total for the selected sub-deliveriesplus details for the bankcard selected to the Payment AuthorizationServer and receive reply.

[1125] 6. Deal with Result

[1126] Perform

[1127] 7 Note Bankcard Details, if the debit is authorized

[1128] Else

[1129] 8 Not Authorized

[1130] 7. Note Bankcard Details

[1131] Note the bankcard details against the selected sub-deliveries.

[1132] 8. Not Authorized

[1133] Display a message telling the netizen that the card selected hasnot been authorized for the debit amount.

[1134] 9. Deal with Organization Account

[1135] Perform

[1136] 10 Request Account Confirmation

[1137] 11 Deal with Result

[1138] 10. Request My Account Confirmation

[1139] The IAD asks the current site server whether the organization thenetizen is currently representing has an account with that site. Get thereply.

[1140] 11. Deal with Result

[1141] Perform

[1142] 11 Note Account Details, if the netizen has an account with thesite

[1143] 12 Not Authorized

[1144] 12. Note Account Details

[1145] For the selected sub-deliveries note the account number andaddress supplied by the site. Ask the netizen to enter an official ordernumber, if she wishes.

[1146] 13. Not Authorized

[1147] Display a message telling the netizen that the organization sheis authorized to represent does not have an account with the currentsite.

[1148] Section U: Deal with Payments

[1149] In the narrative below “dispatch” means the same as“sub-delivery”.

[1150] Perform

[1151] 1 Deal with Dispatches, if the registry site receives a dispatchfile from a member site

[1152] 7 Debit Site Account, if a “Payment Received” notification isreceived from the site server by the registry server

[1153] 8 Credit Customs, if customs for a country enters a sub-deliverynumber and import duty is to be paid via the Internet and it has not yetbeen paid

[1154] 1. Deal with Dispatches

[1155] Perform

[1156] 2 Deal with One Dispatch, until each dispatch has been processed

[1157] 2. Deal with One Dispatch

[1158] Perform

[1159] 3 Deal with Product Payment

[1160] 6 Credit Insurer, if the dispatch is insured against loss intransit

[1161] 3. Deal with Product Payment

[1162] Perform

[1163] 4 Credit Site, if bankcard details are held for the dispatch

[1164] Else

[1165] 5 Send Invoice

[1166] 4. Credit Site

[1167] Credit Site with the price of the goods composing the dispatchedsub-delivery less an agreed registry percentage plus carriage, packing,and sales tax (if any). Debit bankcard for the total amount due for thesub-delivery.

[1168] 5. Send Invoice

[1169] Send an invoice for the dispatched sub-delivery to the netizen.

[1170] 6. Credit Insurer

[1171] Credit the insurer and debit the site account with the premiumamounts.

[1172] 7. Debit Site Account

[1173] Debit the site account with an agreed registry percentage of theprice of the goods within the sub-delivery.

[1174] 8. Credit Customs

[1175] Credit the Customs and Excise department in the destinationcountry with the amount of import tax due on the sub-delivery. Debit thesite server for the same amount.

[1176] Section V: Deal with Gift Wrapping

[1177] Perform

[1178] 1 Deal with One Wrapping Type, until the netizen clicks “No moregifts”

[1179] 1. Deal with One Wrapping Type

[1180] Perform

[1181] 2 Which Wrapping Type?

[1182] 3 Whole Basket?

[1183] 4 Deal with Line Selection, if netizen answers “No” to ‘Wholebasket?’ question

[1184] 5 Deal with Charge for One Line, until each selected order linehas a gift wrap charge

[1185] 2. Which Wrapping Type?

[1186] Ask the site to display (if they are not already doing so) thegift wrapping styles they offer each with a “Use this One” button.

[1187] 3. Whole Basket?

[1188] Note the style identifier and the price per unit length for theselected style and perform §6 of Section O for gift wrap type selected.

[1189] 4. Deal with Line Selection

[1190] Perform §7 of Section O for gift wrap type selected.

[1191] 5. Deal with Charge for One Line

[1192] 6 Calculate Charge

[1193] 7 Accept Line?

[1194] 8 Record Accepted Charge, if the netizen clicks “OK” to acceptthe displayed gift wrap charge

[1195] 6. Calculate Charge

[1196] The items in the order line are each separately gift wrapped.Invite the netizen to fill in a gift tag for each item in the line.Multiply the gift wrap length required per item by the quantity in theselected order line to give gift wrap length. Multiply the price perunit length by the gift wrap length to give gift wrap charge.

[1197] Multiply the wrapping labor charge by the quantity in theselected order line to give labor charge. Add the labor charge to thegift wrap charge to give the total gift wrap charge. Display this totalagainst the order line.

[1198] 7. Accept Line?

[1199] Invite the netizen to click “OK” to accept this gift wrap chargefor the current gift wrap style. (She can perform §1 in Section Vinstead of accepting the charge).

[1200] 8. Record Accepted Charge

[1201] Record the accepted charge against the current order line.

1. The Flexible, Orienting, and Better Shopping Wallet for Netizens is amethod that allows a person to store her wallet on a specified Internetserver or else to store her wallet on that Internet access device or ona portable medium while maintaining complete version control.
 2. TheFlexible, Orienting, and Better Shopping Wallet for Netizens is a methodthat enables a person to build her order and delivery instructionswithin a wallet on her Internet access device while retrieving data fromvarious servers and then supply them to a server.
 3. In addition to (3)the said data can be recorded in said person's wallet.
 4. In addition to(3) said person can select a journey duration for each item.
 5. Inaddition to (3) said order can be divided by said wallet according todestination, dispatch delay, and journey duration of each item in saidorder.
 6. In addition to (3) said wallet obtains carriage costs andsales tax from a server based on journey durations and maximum volumeand weight allowed.
 7. In addition to (6) said wallet determines byreference to said server any import duty payable by reference todestination and fulfillment depot of each said item.
 8. In addition to(7) said wallet arranges for said duty to be paid automatically whensaid items arrive at country of destination.